var ctx;

function setCtx(ctx) {
	this.ctx = ctx;
	initListener();
}

$(function(){
	selectChange();
	adCategoryById();
})

//根据对象类型显示对应输入框
function selectChange(){
	if($("#objType").val()==""){
		$("#shopsCheck").hide();
		$("#goodsCheck").hide();
		$("#webUrlCheck").hide();
	}
	if($("#objType").val()==1){
		$("#shopsCheck").show();
		$("#goodsCheck").hide();
		$("#webUrlCheck").hide();
	}
	if($("#objType").val()==2){
		$("#shopsCheck").show();
		$("#goodsCheck").show();
		$("#webUrlCheck").hide();
	}
	if($("#objType").val()==3){
		$("#shopsCheck").hide();
		$("#goodsCheck").hide();
		$("#webUrlCheck").show();
	}
}

//店铺、商品级联
function initListener(){
	/**
	 * 根据店铺id 查询相应店铺下所以的商品信息
	 */
	$("#shopsCheck").change(function(){
		shopsCheck = $('#shopsCheck').val();
		if (shopsCheck != ""){
			$.ajax({
		        type : "GET",
		        url : ctx + "/goodsInfo/getGoodsInfoByShopId",
		        cache : false,
		        dataType : 'json',
		        data : {
		        	shopId : shopsCheck,
		        },
		        success : function(data) {
		        	if (data.success) {
		                var result = "<option value='" + "'>请选择商品</option>";
		                $.each(data.obj, function(index, item) {
		                    result += "<option id='" + item.name + "'" + " value='" + item.id + "'>" + item.name + "</option>";
		                });
		                $("#goodsCheck").html('');
		                $("#goodsCheck").append(result);
		                $("#goodsCheck").change();
		            }
		        }
			});
		} else {
			var result = "<option value='" + "'>请选择商品</option>";
			$("#goodsCheck").html("");
	        $("#goodsCheck").append(result);
	        $('#goodsCheck').change();
		}
	});
	
	$('#goodsCheck').change(function() {
		goodsCheck = $('#goodsCheck').val();
	});
	
	$("#adCategoryid").change(function(){
		adCategoryById();
	});
}

//根据广告位分类id获取图片最佳高宽
function adCategoryById(){
	adCategoryid = $('#adCategoryid').val();
	if (adCategoryid != ""){
		$.ajax({
	        type : "GET",
	        url : ctx + "/adCategory/selectAdCategoryByPrimaryKey",
	        cache : false,
	        dataType : 'json',
	        data : {
	        	adCategoryid : adCategoryid,
	        },
	        success : function(data) {
	        	if (data.success) {
	                var result= "<label id='adCategory' class='lbl' style='width: 400px; height: 15px;'>请上传格式为 '" + data.obj.imgWidth + "' * '" + data.obj.imgHeight + "'的广告位图片！";
	                $("#adCategory").html('');
	                $("#adCategory").append(result);
	                $("#adCategory").change();
	            }
	        }
		});
	} else {
		var result = "<label id='adCategory' class='lbl' style='width: 400px; height: 15px;'>请选择广告位类型后，按照长宽上传合适的图片！</label>";
		$("#adCategory").html("");
        $("#adCategory").append(result);
        $('#adCategory').change();
	}
}

//验证广告位logo不能为空
function checkLogo(){
	var imageLogoUrl = $('#imageLogo').val();
	if(imageLogoUrl == null || imageLogoUrl == ""){
		layer.msg("请上传广告图片！",{
            icon: 3,
            time: 2000 //2秒关闭（如果不配置，默认是3秒）
        });
		return false;
	}else{
		return true;
	}
}

//验证广告位类型
function checkAdCategoryType(){
	var adCategoryid = $("#adCategoryid").val();
	if(adCategoryid == null || adCategoryid == ""){
		layer.tips('请选择广告位类型!', '#adCategoryid', {
		    tips: 3,
		    time:1000
		});
		return false;
	}else{
		return true;
	}
}

//验证标题
function checkTitle(){
	var title = $("#title").val();
	//解决ie9以下placeholder与value重复的问题
	if(title == $("title").attr("placeholder")){
		title = "";
	}
	if(title == null || title == ""){
		layer.tips('标题不能为空!', '#title', {
		    tips: 3,
		    time:1000
		});
		return false;
	}else{
		return true;
	}
}

//验证开始时间
function checkBeginTime(){
	var beginTime = $("#beginTime").val();
	//解决ie9以下placeholder与value重复的问题
	if(beginTime == $("beginTime").attr("placeholder")){
		beginTime = "";
	}
	if(beginTime == null || beginTime == ""){
		layer.tips('请选择开始时间!', '#beginTime', {
		    tips: 3,
		    time:1000
		});
		return false;
	}else{
		return true;
	}
}

//验证结束时间
function checkEndTime(){
	var endTime = $("#endTime").val();
	//解决ie9以下placeholder与value重复的问题
	if(endTime == $("endTime").attr("placeholder")){
		endTime = "";
	}
	if(endTime == null || endTime == ""){
		layer.tips('请选择结束时间!', '#endTime', {
		    tips: 3,
		    time:1000
		});
		return false;
	}else{
		return true;
	}
}

//验证对象类型
function checkObjType(){
	var objType = $("#objType").val();
	if(objType == null || objType == ""){
		layer.tips('请选择对象类型!', '#objType', {
		    tips: 3,
		    time: 1000
		});
		return false;
	}else{
		return true;
	}
}

//验证店铺不能为空
function checkShops(){
	var shopsCheck = $("#shopsCheck").val();
	if(shopsCheck == null || shopsCheck == ""){
		layer.tips('店铺不能为空!', '#shopsCheck', {
			tips: 3
		});
		return false;
	}else{
		return true;
	}
}

//验证商品不能为空
function checkGoods(){
	var goodsCheck = $("#goodsCheck").val();
	if(goodsCheck == null || goodsCheck == ""){
		layer.tips('商品不能为空!', '#goodsCheck', {
			tips: 3
		});
		return false;
	}else{
		return true;
	}
}

//验证网址不能为空
function checkURL(){
	var webUrlCheck = $("#webUrlCheck").val();
	if(webUrlCheck == null || webUrlCheck == ""){
		layer.tips('网址不能为空!', '#webUrlCheck', {
			tips: 3
		});
		return false;
	}else{
		return true;
	}
}

//验证排序不能为空
function checkSort(){
	var reg = /^[0-9]*[1-9][0-9]*$/;
	var sort = $("#sort").val();
	if(sort == null || sort == ""){
		layer.tips('排序不能为空!', '#sort', {
			tips: 3,
			time:1000
		});
		return false;
	}else if(!reg.test(sort)){
		layer.tips('请输入正整数!', '#sort', {
			tips: 3,
			time:1000
		});
		return false;
	}else{
		return true;
	}
}

//保存或新增方法
function saveAdInfo() {
	var adInfoId = $("#adInfoId").val();
	var title = $("#title").val();
	var adCategoryid = $("#adCategoryid").val();
	var beginTime = $("#beginTime").val();
	var endTime = $("#endTime").val();
	var objType = $("#objType").val();
	if(objType == 1){
		var objId = $("#shopsCheck").val();
	}
	if(objType == 2){
		var objId = $("#goodsCheck").val();
	}
	if(objType == 3){
		var webUrl = $("#webUrlCheck").val();
	}
	var remark = $("#remark").val();
	var imageLogoUrl = $('#imageLogo').val();
	var sort = $("#sort").val();

    if(checkLogo() && checkAdCategoryType() && checkTitle() && checkBeginTime() && checkEndTime() && checkObjType() && checkSort()
    		&&((objType == 1 && checkShops()) || (objType == 2 && checkGoods()) || (objType == 3 && checkURL()))){
    		var index1 = layer.load(1);
				$.ajax({
					type : "POST",
					url : ctx + "/adInfo/saveOrUpdateAdInfo",
					cache : false,
					dataType : 'json',
					data: {
						title:title,
						id:adInfoId,
						adCategoryId:adCategoryid,
						beginTime:beginTime,
						endTime:endTime,
						objType:objType,
						objId:objId,
						webUrl:webUrl,
						remark:remark,
						sort:sort,
						img : imageLogoUrl
					},
					success : function(result) {
						if (result.success) {
							layer.msg("操作成功",{
								icon: 1,
								time: 2000 //2秒关闭（如果不配置，默认是3秒）
							},function(){
								loadContent("/adInfo/adInfoList");
							});
						} else {
							layer.close(index1);
							layer.msg("操作失败",{
								icon: 2
							});
						}
					}
				});
    }
}

//返回上一页
function cancel(){
	loadContent("/adInfo/adInfoList"); 
}